There's a lot of talk in the electronics industry about costs and how to minimize them. But for all the talk, little is said about the human costs of IC design. The fact is that entire lives are lost to debugging.
The time and effort spent tracking down the causes of design bugs is a crucial factor in the economics of IC design. Moreover, the human costs are tallied not only in the direct cost of head count, but also in the quality of life of the people who do the debug.
Anyone who has ever written a program of any sort knows that when there's a bug in your design, you can't think of anything else. You know the drill: Try to understand the problem. Fix something. Run it again. Still not right-damn. Try again. Do this until 4 a.m., or until someone comes to drag you off to bed.
This labor costs engineers dearly at work and, more importantly, at home. How often do your engineers stay late or work weekends because they're trying to track down an elusive bug?
Design and verification managers have a lot to gain by making engineers more productive, and helping them improve their quality of life. People are the single largest expense in IC design. They're hard to find. They're hard to keep happy. But happy engineers are productive engineers who stick around past the current project, reducing the cost of turnover.
Verification is extremely expensive because it takes a lot of time and effort. Breaking the verification process down helps illustrate the cost, and understanding the human element is vital to reducing it.
Engineers describe what they want a design to do in a set of HDL source files. Then they describe in a testbench what they expect the rest of the system surrounding the design to do, and the chip's response to that behavior. Once they've got these things worked out, they must then run some tool or set of tools, typically simulation, to detect whether the chip behaves as expected.
It is this detection phase that has received most of the attention. Indeed, lots of research and development has gone into finding ways to speed the detection of errors. Yet although the industry has developed faster algorithms and improved methods such as parallelization and acceleration, relatively little has been done to speed up the part of the process dominated by human effort. A typical attitude might be "we'll just hire more engineers." But in today's world, the cost of these engineers-finding, hiring, training and retaining them-is simply too high.
This human element is vitally important, because after detecting a problem through simulation or some other method, the most expensive part of the process kicks in. This is the part where engineers must figure out why the chip did not behave as expected. Were the expectations wrong? Was the design description wrong? Was the testbench wrong? And if the answer is yes to one or more of these, just exactly how should they be changed to make things right?
Every hour that engineers spend figuring why something doesn't work and trying to understand how to fix it is an hour they cannot spend doing something else. More-productive activities are easily found.
Design engineers should be adding more features to the chip, and thus increasing its value. Verification engineers should be adding more test cases, thus decreasing the likelihood of a chip respin. All of them should be spending more time at home with their families instead of debugging. People will remain the most expensive part of the IC design process. Managers must keep the human element clearly in mind as they make plans for weathering the current semiconductor recession, and the inevitable boom to follow.
---
Scott Sandler is president and chief executive officer of Novas Software Inc. (San Jose, Calif.).
http://www.isdmag.com
© 2001 CMP Media LLC.
10/1/01, Issue # 13148, page 56.